﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Portfolio.Entities;
using Portfolio.IViews.Common;
using Portfolio.BL.Common;

namespace Portfolio.IViews.Admin
{
    public interface IAdminArticleCategoriesView
    {
        event EventHandler<EventArgs> LoadArticleCategoriesSortBySearch;
        event EventHandler<EventArgs> LoadFieldsSearch;
        event EventHandler<EventArgs> DeleteArticleCategory;
        event EventHandler<EventArgs> SetMaxSeqArticleCategory;
        event EventHandler<EventArgs> SetUpSeq;
        event EventHandler<EventArgs> SetDownSeq;

        IList<ArtcileCategoriesGridV> ArticleCategoriesDataBind { set; }

        ArticleCategoryT ArticleCategory { get; }

        string SortExpression { get; set; }
        string SortDirection { get; set; }

        string SearchTitle { get; }
        int? SearchArticleCategories { get; }
        bool? SearchActive { get; }
        byte? SearchStatus { get; }
        

        string PublishInformationSuccess { set; }
        string PublishInformationNotice { set; }         
        string PublishException { set; }

        int MaxSeqArticleCategory { set; }

        DataSourceContainer ArticleCategoriesDataSource { set; }
        DataSourceContainer StatusDataSource { set; }
        DataSourceContainer ActiveDataSource { set; }
        DataSourceContainer PageSizeDataSource { set; }        
    }
}
